home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1997-03-10 | 5.9 KB | 203 lines |
- 10 'SHORTDIP - Short Multiband Dipoles - 29 DEC 95 rev. 10 MAR 97
- 20 IF EX$=""THEN EX$="EXIT"
- 30 PROG$="shortdip"
- 40 COMMON EX$,PROG$,LX 'note:lx=lg
- 50 CLS:KEY OFF
- 60 COLOR 7,0,1
- 70 PI=3.14159
- 80 UL$=STRING$(80,205)
- 90 U$="###.##"
- 100 DIM FQ(9,2)
- 110 '
- 120 DATA 160,80,40,30,20,17,15,12,10
- 130 DATA 1.9, 3.75, 7.15,10.125, 14.175, 18.118, 21.225, 24.94, 28.85
- 140 FOR Z=1 TO 9:READ FQ(Z,1):NEXT Z
- 150 FOR Z=1 TO 9:READ FQ(Z,2):NEXT Z
- 160 '
- 170 '.....start
- 180 CLS
- 190 COLOR 15,2
- 200 PRINT " SHORT MULTIBAND DIPOLE ARRAY";
- 210 PRINT TAB(57)"by George Murphy VE3ERP ";
- 220 COLOR 1,0:PRINT STRING$(80,223);
- 230 COLOR 7,0
- 240 GOSUB 1470 'diagram
- 250 PRINT UL$;
- 260 GOSUB 1640 'preface
- 270 PRINT UL$;
- 280 PRINT TAB(T)"Press 1 to RUN program or 0 to EXIT.....";
- 290 Z$=INKEY$:IF Z$=""THEN 290
- 300 IF Z$="1"THEN 340
- 310 IF Z$="0"THEN CLS:RUN EX$
- 320 GOTO 290
- 330 '
- 340 VIEW PRINT 15 TO 24:CLS:VIEW PRINT:LOCATE 15
- 350 PRINT " Press number in < > to choose standard units of measure:"
- 360 PRINT UL$;
- 370 PRINT " < 1 > Metric"
- 380 PRINT " < 2 > U.S.A./Imperial"
- 390 Z$=INKEY$:IF Z$=""THEN 390
- 400 IF Z$="1"THEN M$=" m.":W$=" ^ 2 mm ":UM=0.3048:GOTO 440
- 410 IF Z$="2"THEN M$=" ft":W$=" AWG 12 ":UM=1:GOTO 440
- 420 GOTO 390
- 430 '
- 440 VIEW PRINT 15 TO 24:CLS:VIEW PRINT:LOCATE 15
- 450 IF LG=0 THEN LIN=15:GOTO 580
- 460 PRINT " Press number in < > to:"
- 470 PRINT UL$;
- 480 PRINT " < 3 > Select another length 'A'"
- 490 PRINT " < 4 > Run Detail Design program"
- 500 PRINT
- 510 PRINT " < 0 > EXIT"
- 520 Z$=INKEY$:IF Z$=""THEN 520
- 530 IF Z$="3"THEN LIN=13:GOTO 580
- 540 IF Z$="4"THEN CLS:LX=LG:CHAIN"shortant"
- 550 IF Z$="0"THEN CLS:RUN EX$
- 560 GOTO 520
- 570 '
- 580 '.....notes
- 590 VIEW PRINT LIN TO 24:CLS:VIEW PRINT:LOCATE LIN
- 600 T=7
- 610 PRINT TAB(T);
- 620 PRINT "These antennas will perform very well at modest heights when 'A' is"
- 630 PRINT TAB(T);
- 640 PRINT "longer than 1/5 wavelength for the band of operation. At lengths"
- 650 PRINT TAB(T);
- 660 PRINT "below this threshold an antenna will still work but its efficiency"
- 670 PRINT TAB(T);
- 680 PRINT "(rated 'Fair' by this program) begins to approach that of a typical"
- 690 PRINT TAB(T);
- 700 PRINT "inductively loaded mobile whip antenna."
- 710 PRINT
- 720 PRINT TAB(T);
- 730 PRINT "Extremely short antennas for the lower HF bands may require loading"
- 740 PRINT TAB(T);
- 750 PRINT "coils so large that the antenna may become physically impractical."
- 760 PRINT UL$;
- 770 PRINT " ENTER: Available space A (";M$;" ).......";:INPUT LG
- 780 LG=LG/UM
- 790 CLS:GOSUB 1470
- 800 B=0.9*LG/2 'dimension B
- 810 DIA=0.0808081 'wire diameter
- 820 COLOR 0,7
- 830 LOCATE 2,34:PRINT " A=";USING U$;LG*UM;:PRINT M$+" "
- 840 LOCATE 3,24:PRINT USING U$;LG/2*UM;:PRINT M$+" "
- 850 LOCATE 4,27:PRINT USING U$;B*UM;:PRINT M$+" "
- 860 COLOR 7,0:LOCATE 12
- 870 PRINT UL$;
- 880 LOCATE CSRLIN-1,8:PRINT "FN"
- 890 LOCATE CSRLIN-1,21:PRINT "FN"
- 900 LOCATE CSRLIN-1,55:PRINT "FN"
- 910 LOCATE CSRLIN-1,31:PRINT W$;"WIRE DIPOLES "
- 920 '
- 930 PRINT TAB(8)"CALL";TAB(21)"CALL Dipole";
- 940 PRINT TAB(32)"CALLEfficiencyCALL";TAB(46)"Loading";TAB(55)"CALL";TAB(63)"EFFICIENCY"
- 950 PRINT TAB(3)"Band CALL";TAB(13)"MHz";TAB(21)"CALL Length";TAB(32)"CALLThreshold CALL";
- 960 PRINT TAB(46)"Coils L";TAB(55)"CALL Excellent Good Fair"
- 970 PRINT UL$;
- 980 LOCATE CSRLIN-1,8:PRINT "STEP"
- 990 LOCATE CSRLIN-1,21:PRINT "STEP"
- 1000 LOCATE CSRLIN-1,32:PRINT "STEP"
- 1010 LOCATE CSRLIN-1,43:PRINT "STEP"
- 1020 LOCATE CSRLIN-1,55:PRINT "INSTR"
- 1030 '
- 1040 '.....calculate & print
- 1050 FOR Z=1 TO 9
- 1060 F=FQ(Z,2)
- 1070 WL=491.787/F '1/2 wavelength in free space, in feet
- 1080 RA=WL*12/DIA 'ratio of 1/2 wavelength to wire diameter
- 1090 K=0.91
- 1100 IF RA>10 THEN K=0.92
- 1110 IF RA>12 THEN K=0.93
- 1120 IF RA>15 THEN K=0.94
- 1130 IF RA>22 THEN K=0.95
- 1140 IF RA>50 THEN K=0.96
- 1150 IF RA>200 THEN K=0.97
- 1160 IF RA>2000 THEN K=0.98
- 1170 HW=492*K/F 'length of half wave flat top, in feet
- 1180 HW=0.95*HW/K 'end effect correction for f<30MHz
- 1190 SP=300/F*0.656 'minimum dimension A
- 1200 F1=10^6/(68*PI^2*F^2)
- 1210 F2=LOG((24*(234/F)-B)/DIA-1)
- 1220 F3=(1-F*B/234)^2-1
- 1230 F4=234/F-B
- 1240 F5=LOG((24*LG/2-B)/DIA-1)
- 1250 F6=((F*LG/2-F*B)/234)^2-1
- 1260 F7=LG/2-B
- 1270 L=F1*(F2*F3/F4-F5*F6/F7)
- 1280 IF HW<LG THEN L=0
- 1290 PRINT USING "####";FQ(Z,1);:PRINT " m."; 'band
- 1300 PRINT USING "####.###";F;:PRINT " MHz"; 'frequency
- 1310 IF L>0 THEN PRINT USING "#####.##";LG*UM;:PRINT M$;:GOTO 1340
- 1320 PRINT USING "#####.##";HW*UM;:PRINT M$; '1/2 wave
- 1330 IF L=0 THEN PRINT TAB(37)"-";:GOTO 1350
- 1340 PRINT USING "#####.##";SP*UM;:PRINT M$; 'A threshold
- 1350 IF L=0 THEN PRINT TAB(47)"none CALL";:GOTO 1370
- 1360 PRINT USING "#######.#";L;:PRINT " >H CALL"; 'inductance
- 1370 IF LG<SP THEN COLOR 0,7:LOCATE CSRLIN,76:PRINT "[<UNK! {00FB}>]";:GOTO 1420
- 1380 IF L<>0 THEN 1410
- 1390 COLOR 0,7:LOCATE CSRLIN,58:PRINT "[<UNK! {00FB}>]";
- 1400 COLOR 7,0:LOCATE CSRLIN,62:PRINT "(full size dipole)";:GOTO 1420
- 1410 COLOR 0,7:LOCATE CSRLIN,69:PRINT "[<UNK! {00FB}>]";
- 1420 COLOR 7,0:IF CSRLIN<24 THEN PRINT ""
- 1430 NEXT Z
- 1440 GOTO 1840 'end
- 1450 END
- 1460 '
- 1470 '.....diagram
- 1480 COLOR 0,7
- 1490 T=12
- 1500 LOCATE ,T:PRINT " "
- 1510 LOCATE ,T:PRINT " CALLDEFSNGSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND A SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDDEFDBLCALL "
- 1520 LOCATE ,T:PRINT " CALLDEFSNGSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND A/2 SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDDEFDBLCALL CALL "
- 1530 LOCATE ,T:PRINT " CALL CALLDEFSNGSOUNDSOUNDSOUNDSOUNDSOUNDSOUND B SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDDEFDBLCALL loading coils LSOUNDCOLOR CALL "
- 1540 LOCATE ,T:PRINT " - -/SOUNDSOUNDSOUNDORORORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDBSAVE/BSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDORORORSOUNDSOUNDSOUND/- - "
- 1550 LOCATE ,T:PRINT " - -/SOUNDSOUNDSOUNDORORORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND<0xB4!> BLOADSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDORORORSOUNDSOUNDSOUND/- - "
- 1560 LOCATE ,T:PRINT " VARPTRSOUNDDEFDBL - - - -/-SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND<0xB4!> BLOADSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND-/- - - - - - "
- 1570 LOCATE ,T:PRINT " BLOADSOUNDDEFDBL - - - - - SOUND/SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORCOLORBLOADSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND/SOUND - - - - - - - "
- 1580 LOCATE ,T:PRINT " full size RENUM wave dipole(s) PRESET' "
- 1590 LOCATE ,T:PRINT " OPENDEFSNGSOUND 50-- COAX "
- 1600 LOCATE ,T:PRINT " Typical Configuration for Multiple Dipoles "
- 1610 COLOR 7,0
- 1620 RETURN
- 1630 '
- 1640 '.....preface
- 1650 T=7
- 1660 PRINT TAB(T);
- 1670 PRINT "A simple and effective multiband antenna array may be made by"
- 1680 PRINT TAB(T);
- 1690 PRINT "connecting a number of parallel dipoles a few inches apart to a"
- 1700 PRINT TAB(T);
- 1710 PRINT "single low-impedance transmission line at a common feed point. Some"
- 1720 PRINT TAB(T);
- 1730 PRINT "or all of these dipoles can be electrically shortened to fit the"
- 1740 PRINT TAB(T);
- 1750 PRINT "space available by installing loading coils in the horizontal legs."
- 1760 PRINT TAB(T);
- 1770 PRINT "Use this program to plan your array, then use the detailed design"
- 1780 PRINT TAB(T);
- 1790 PRINT "option from the menu at the end of the program to design each of"
- 1800 PRINT TAB(T);
- 1810 PRINT "the inductively loaded dipoles in your array."
- 1820 RETURN
- 1830 '
- 1840 '.....end
- 1850 GOSUB 1900
- 1860 VIEW PRINT 12 TO 24:CLS:VIEW PRINT:LOCATE 12:PRINT UL$;
- 1870 GOTO 450 'menu
- 1880 END
- 1890 '
- 1900 'HARDCOPY
- 1910 GOSUB 2020:LOCATE 25,2:COLOR 14,6
- 1920 PRINT " Press 1 to print screen, 2 to print screen & ";
- 1930 PRINT "advance paper, or 3 to continue.";:COLOR 7,0
- 1940 Z$=INKEY$:IF Z$="3"THEN GOSUB 2020:RETURN
- 1950 IF Z$="1"OR Z$="2"THEN GOSUB 2020:GOTO 1970
- 1960 GOTO 1940
- 1970 FOR QX=1 TO 24:FOR QY=1 TO 80
- 1980 LPRINT CHR$(SCREEN(QX,QY));
- 1990 NEXT QY:NEXT QX
- 2000 IF Z$="2"THEN LPRINT CHR$(12)
- 2010 GOTO 1910
- 2020 LOCATE 25,1:PRINT STRING$(80,32);:RETURN
-